/*
*   Umit Yilmaz & Alex Garella
*	Opdracht 3 deel 1
*
*
*
*/

public class Opdracht31
{	
    public static void main(String[] args)
    {
    }
    //klasse SchrijfLetterRijtjes heeft als input een String s en een integer
    //n. n staat voor de lengte van het rijtje dat je wilt vormen uit de
    //letters van s.
    public static void SchrijfLetterRijtjes(String s, int n)
    {
        //Mocht er als input een breedte langer dan de String s gegeven worden
        //wordt deze gelijkgesteld aan de lengte van s om errors te voorkomen
        //In het algoritme heb je verder een array nodig waar de letters tijdens
        //het doorlopen van de tree in worden opgeslagen. De methode combi1
        //die ons algoritme is, heeft verder een integer m die het aantal letters
        //bijhoudt
        if(n > s.length())
            n = s.length();
        char[] lol = new char[10];
        Combi1(s,n,lol,0);
    }

    static void Combi1(String s,int n, char[] seq, int m)
    {
        //de stopvoorwaarde van de recursie. Wanneer n = 0, 
        if(n == 0)
        {
            for(int i = 0; i < m; i = i + 1)
                    System.out.print(seq[i]);
            System.out.println();
        }
        else
        for (int i = 0 ; !(i > (s.length() -1)); i = i + 1)
        {
            seq[m] = s.charAt(i);
            m = m + 1;
            Combi1(s,n-1,seq,m);
            m = m - 1;
        }
    }
}
